读书笔记N243 :跨链之Cosmos

497 字

读书笔记N243:跨链之COSMOS

Cosmos正是定位于解决数据跨链问题而诞生的,它是一个独立并行的区块链网络系统,系统内的每个区块链都由BFT共识算法提供支持,由此实现了不同区块链之间的跨链信息传递,因此Cosmos也被称为“区块链的互联网”。
例如币安链和币安的DEX去中心化交易所就是基于Cosmos技术而开发的,这也足以体现Cosmos强劲的技术实力。

整个Cosmos项目拥有非常清晰的开发路线图和链上治理架构,在已经过去的两年中已经完成了包括投票和 Token 代理、「Game of Stakes」和钱包等里程碑节点。
但是直到今天为止,Cosmos 跨链实现中最关键部分 IBC (即跨链通信)协议还未被部署到系统中。而IBC正是整个Cosmos网络实现跨链交易的核心,没有完成IBC模块的Cosmos还无法实现真正的跨链交易。

ATOM是Cosmos中最重要的一种代币,大家平时所谈论的Cosmos价格也就是指的ATOM币价。大家平时称ATOM为“阿童木”,Cosmos希望打造一个由多个枢纽(Hub)组成的万链互联的区块链宇宙。「Cosmos Hub」将是整个Cosmos生态中的第一个也是最为重要的一个枢纽,我们也可以把「Cosmos Hub」简单理解为是Cosmos整个体系运行的核心,而ATOM就是这个核心枢纽的原生代币(同时,其他Hub上也会有自己的原生代币)。如果Cosmos获得了巨大的成功,ATOM作为Cosmos系统中最重要的一个Token,未来ATOM完全有机会获得巨大的价值提升,这点也正是ATOM的价值支撑所在。

ATOM的本质是一种治理通证,每个ATOM持有者都有机会参与「Cosmos Hub」的链上治理。具体做法是,ATOM 持有者可以将自己的代币进行「Staking」,既可以获得 Staking 的质押收益,同时也参与了链上治理,间接地为 Cosmos 网络提供了安全性,而这种安全性的验证工作对Cosmos网络成功与否是至关重要的。

按照Cosmos的Staking质押规定,在申请解除质押的21天内是无法进行转账操作的,用户解除质押后需要等待21天ATOM才能进入可转账、可交易的状态。ATOM 这类高抵押率的币种,价格通常会更容易被操纵,同时,币价受消息面的影响也会更加明显,毕竟70%以上的流通量已经抵押在系统中无法参与短期交易。

IRIS 算是 Cosmos 的大儿子了,它也是除了 「Cosmos Hub」 之后的第一个Hub。IRIS是Cosmos生态中专注提供跨链服务的枢纽,它的重点是促进Cosmos大生态内去中心化商业应用的构建。简单来说,IRIS想要做的事情不仅仅是 Token 流通,而重点在于跨链服务。这其实也是另外一个跨链明星项目“波卡”所要做的事情,IRIS 最终能不能做好,现在还很难说,还需要用时间去验证。

与 Maker DAO 只能抵押 ETH 不同,Kava 希望可以用任意一种 Cosmos 支持的币种作为抵押品。这样的话,可用的质押资源就会比单一ETH丰富许多,相当于一定程度上分散了借贷平台的风险。目前Kava的测试网络已经上线,已经支持BTC、XRP、ATOM和BNB。整体而言,Kava作为Cosmos生态内首个DeFi项目,具有抵押资产类别多,网络性能良好的特点。

Cosmos 相对于 Polkadot 的几方面优势:
Cosmos 主网已经上线了,而Polkadot 主网预计今年年底才会上线;
Polkadot 的平行链参与流程限制性更强,而且成本更高;
Cosmos更能满足特定项目(如币安)对自定义的需求;
Polkadot 的平行链上验证者的恶意行为会波及整个网络。在 Cosmos 网络中,恶意行为只能破坏个别分区和资产;
目前已经有很多项目在使用 Cosmos SDK 了;
Cosmos重点关注如何降低资产转移的难度,目前已经有经过验证的用例。

整体而言,Cosmos更类似HTTP协议,是多条链的粘合剂。而Polkadot像是一个魔方,它可以延伸出各种链的形式。

Zone就是区块链的另一种说法。在默认情况下,具有独立验证器集的两条独立的区块链具有独立的安全性,因为COSMOS Zone使用的是基于经典BFT共识的“绑定的权益证明(bonded proof of stake)”,而不是工作量证明机制。在PoS下,节点需要持有一定的token或者将持有的token锁仓才能参与其中,而如果节点作恶,他们就面临着全部token被没收的风险。

COSMOS hub的作用就是保证安全性,尤其是保证Zone 和Zone之间token的平衡。安全模型是信任资产转移到你手中的路径。即使一个zone发生灾难性的故障,COSMOS网络中token的整体供应也不会受影响,更别说影响其他链上的账户了。COSMOS网络将在没有这个Zone的情况下照常运行,直到出错的Zone完全恢复并接入网络之前。

巨大的验证者池增强了hub的去中心化,这让更多的独立实体能够对生态系统的安全和维护做出贡献。Tendermint共识算法允许COSMOS Hub能够在存在大量验证者的情况下快速完成区块确认,同时保证一旦发生双花攻击,抵押的大量代币就被会没收。当其他链试图通过“采样(sampling)”每个区块的签名来完成更多的验证时,Tendermint会拒绝这样的操作,因为Tendermint的设计就是为了确保最大的安全性——所有的验证者都需要签名,保证矿工在试图进行双花攻击时面临更大的风险。Tendermint最先进的地方就在于它让大量的节点进行验证,而不会牺牲出块时间。

在COSMOS上进行token交易会比在任何一所中心化交易所上交易都高效,因为COSMOS上的链都采用了Tendermint共识机制,这一共识机制的效率远高于工作量证明机制。相较于原来需要等待一个小时才能确认一笔存款,COSMOS只需要几秒钟。此外,拥有订单簿支持并接入COSMOS hub的去中心化交易所比中心化交易所更安全,因此,市场将不可避免的向COSMOS模型转变。

Tendermint是BPOS+BFT的共识引擎框架。通过编写该框架的应用,可以方便快捷地实现基于Tendermint共识引擎的区块链。它 是简化和优化的PBFT算法,它可以灵活同步网络;同时它可以在不超过1/3的错误节点的情况下即可保证区块的一致性,而在网络发生分叉的时候,Tendermint 不允许分叉,在这种情况下,Tendermint理论上可能卡住,任何新的交易也就都无法写入。 而在BPOS(绑定权益的证明)中,绑定的token会抵押在网络中,决定验证人的投票权重;从而可以避免POW带来的巨大的资源消耗。在这个公共的许可系统,COSMOS采用了slashing机制,也会有一定的解绑期,从而防止作恶。

2014 年,第一批拜占庭容错研究者之一的 Jae Kwon 发表了《Tendermint:非挖矿共识》文章,他文章提到允许一批分布式节点来实现非 PoW 挖矿的共识机制,PoW 挖矿共识也被称为「中本聪共识」。中本聪共识实现了分布式节点的信任共识,但存在很多问题,比如速度很慢、电力浪费等,而 Jae Kwon 提出的 Tendermint 拜占庭容错是第一个引入抵押、验证以及节点轮换的共识算法,对中本聪共识进行了大幅度的改善。

COSMOS SDK采用GO语言,允许开发者在COSMOS网络上采用最简单的方式来设计自己的区块链。Cosmos-SDK提供模块化的结构,为开发者提供现成的开发框架。也就是说开发者可以选择基础区块链应用程序,添加治理或权益委托等模块。同时,COSMOS SDK具备良好的拓展性,你可以在此基础上创建属于自己的模块,无需建立应用层就可以开发出自己需要的区块链。现在,IRISnet、LINO、KAVA等已经基于COSMOS SDK进行了开发。

IBC协议可类比为TCP/IP协议,而这个协议是专门针对COSMOS网络设计的,用于HUB与zone之间消息传递。 IBC协议最大创新就是能实现水平扩展能力。 现在整个行业中,我们不能够提供一条比中心化机构效率更高且用户体验更好的链。现存的链都面临着TPS不够高、交易处理速度不够快的情况,为了提升整个区块链生态的效率。 需要把现存的各个链链接起来,让他们能够即时交流和处理信息。这就需要IBC协议。 目前通过IBC协议可以进行数据传输、代币交易和资产传递等工作。

Hub 可以看做是COSMOS网络上最重要的中心机构,首先,Hub链接不同的Zone,而不同的Zone相连必须通过其相应的Hub.Hub是COSMOS网络中信息、数据传递交易的中枢。其次,COSMOS的出现是为了更好的解决区块链的扩展性问题,为实现无限扩展,首先就需要越来越多的Hub相连。而如果所在Hub上的交易数量太多而导致交易速度下降、只需再建立一个Hub就可以解决这个问题,从而大大提高交易速度。最后,COSMOS Hub可以被看做为cosmos网络中的安全中心,通过Hub可以有效避免双花等作恶事件的发生,所以代币可以安全、迅速地在各个分区之间转移流通。

ICF 为 Cosmos 生态系统中的各种组织提供了资金,帮助实现其愿景。尽管 All in Bits 作为 Cosmos 的顶梁柱是最大的资金接收方,但在 2019 年期间,许多实体在技术和社区等不同方面承担了重要的领导角色和责任。

当决定在哪个区块链基础设施上构建应用程序平台时,Agoric 团队选择了 Cosmos。 他们的平台的当前版本是使用 Cosmos-SDK 构建的,在该平台中他们已将其智能合约环境集成为一个模块。尽管他们计划在区块链和其他设备上推广其平台,但目前他们的目标是通过 Cosmos 技术堆栈进行发布。

除了投资外,自 2018 年底以来,ICF 还与 Regen 签订了服务协议,以开发 Cosmos-SDK 的模块并对其进行改进。虽然最初的重点是专门针对生态再生用例,但随着时间的流逝,其范围已大大扩展,Regen 团队现已成为 Cosmos-SDK 的核心贡献者。也就是说,他们一直在开发诸如链上升级模块,帐户子密钥系统以及用 Protobuf 替换 Amino 之类的实质性改进,并且在 CosmWasm 项目中发挥了领导作用,该项目将基于 WASM 的智能合约引入 Cosmos SDK。这些改进极大地促进了特定应用和整个 Cosmos。

Lunie 于 2017 年开始使用 All in Bits 开发的早期 Cosmos 钱包,曾被称为 Voyager。Cosmos 主网于 2019 年 3 月上线后,Lunie 从 All in Bits 分离出来成立了自己的公司 Lunie International Software Systems,提供 Lunie 作为 Cosmos Hub 的主要用户界面。

Cosmos 主网于 2019 年 3 月上线后,Lunie 从 All in Bits 分离出来成立了自己的公司 Lunie International Software Systems,提供 Lunie 作为 Cosmos Hub 的主要用户界面。

当前跨链技术逐步发展,涌现了一批关注跨链技术的项目,诸如瑞波Interledger 协议、BTC Relay、Cosmos、Polkadot、Lightning network、WanChain万维链、FUSION等。

IRISnet ,我们的团队从 2017 年 4 月作为 Cosmos 中国开发团队开始参与了 Cosmos 开源项目的开发,并在 2017 年 12 月在 Cosmos 的核心开发团队 Tendermint 的支持下设计了 Cosmos 生态的第二个 HUB ---IRISnet。

Jae Kwon 在 2014 年第一次提出了非退化型的支持拜占庭容错 POS 共识实现,那就是 Tendermint , 大家可以看到,现在他们的开发团队的名字也叫 Tendermint 。所以我们一般提到 Tendermint 有两个语境,有时指的是核心开发,有时指的是 Tendermint 共识引擎。 Tendrmint 共识在 2014 年被提出后,被多个区块链项目采用,包括早期 Oracle 的企业联盟链。

Tendermint 共识也叫 BPos, bonded POS, 有质押的权益证明。
所有的 Zone 和 HUB 都采用统一共识协议 Tendermint,对接外部异构链比如 ETH btc 通过基于 Tendermint 的 Peg 来实现。系统内的每个链(Zone,Hub)都是独立的区块链具有自己不依靠 HUB 的治理。Hub 和 Zone 之间的通讯由跨链通讯协议 IBC 来解决 IBC(Inter-Blockchain Communication protocol)

用 Cosmos SDK 开发的 IRIS Hub 也是独立的区块链,其不同于 Cosmos Hub 的地方还包括,支持数据和负责计算以服务形式跨链被调用,同时 IRISnet 的通证经济设计和实现也是不一样的,同时 IRISnet 在支持复杂在线治理,其中最让我们骄傲的是通过在线治理支持的不会硬分叉就能实现软件升级,所以我们也叫自己可以自进化的 BPoS 网络。

Cosmos 的经济模型是一个通胀的模型。BPoS 体系希望鼓励大家把 token 质押在网络上面,质押在网络上的 token 不具有流动性,为了鼓励验证人(矿工),Cosmos 每年以 7%-20% 之间的通胀率进行增发:网络质押率达到了三分之二以上的时候,通胀率会稳定在 7%,如果质押率小于三分之二,通胀率会进行线性增加一直到 20% 稳定。这种设计目标是让能在市场上流动交易的 token 成为少数,而更大量用于网络安全抵押。

Cosmos 提供了一个非常好的开发工具包——Cosmos SDK。IRISnet、币安链、Loom 和 Playlist,都是基于 Cosmos SDK 来开发的。但是这跟 DApp 不太一样的是,利用 Cosmos SDK,实际上我们开发的是自己的应用专有链。设计上不支持直接在 Cosmos 的 Hub 上面去开发 DApp 的
所以支持开发 DAapp 会是 Cosmos 网络的一个 zone 的角色,比如支持智能合约的 Ethermint。Ethermint 底层使用的 Tendermint 共识引擎,在应用层是跟以太坊 EVM 是兼容的。

Polkdot 架构里面主链叫做 relay chain (这有点儿相当在 Cosmos 生态里面 Hub 的地位),网络中基于 Polkdot 发行的链,它的安全和治理都是由 Polkdot relay chain 来支持的,而 Cosmos 各个链都有自己的独立治理。

BPoS 起步就是 100 个节点(未来还可以扩充到近 300),EOS 现在是 21 个超级节点。
除了节点数更多,Tendermint 的共识机制 BPoS (Bonded PoS) 对去中心化还有比以 EOS 为代表 DPoS 有更好支持。在 DPoS 网络里,token 的投票和转账流通是没有关联限制的。而 BPoS 中,token 是真正地被质押在网络上面了不能转账流通,这点是跟 DPoS 设计是非常不一样的。
另外还有一点,BPoS 用户参与网络的验证门槛更低。BPoS 的验证人的配置,比 DPoS 超级节点的配置要求要小,所以它也可以让更多的节点参与。同时更多的普通用户,还可以选择委托质押的方法

Cosmos 的底层是由 Cosmos SDK 构建,Cosmos SDK 可以理解为一个更好帮助开发者开发的工具包,这个工具包含着区块链重要的共识机制,与各种模块化的功能(比如投票功能,治理架构,通信协定),因为 Cosmos SDK 底层构想,使得每个依照 Cosmos SDK 搭建的区块链都具备了相同的基因

成为 Cosmos 节点需要满足如下硬件配置和技术要求:
CPU 核数:2 内存容量:6GB 磁盘空间:256GB SSD 操作系统:Ubuntu 18.04 LTS/16.04 LTS;
带宽: 20Mbps 允许的入方向的链接:TCP 端口 26656 和 26657;
任何云服务器都可以运行节点,如 AWS、GCP、DigitalOcean 等云服务器,具备上述服务器后按照官方配置教程来就可以运行节点。

对于开发者而言,目前通用性公链在性能与开发灵活性上能有非常大的限制,这导致许多项目方都有自定义底层区块链协议的需求。这样的结果,会导致未来世界出现多种底层垂直公链+应用的数据孤岛。它们能够在单一公链上良好交互与操作,但难以与外界公链进行数据交互。

从基本跨链方案来看,可以将技术分为4种:
1、公证人机制;所谓跨链,即将A区块链的数据安全传输到B区块链,实现A与B之间的数据与资产交互。公证人方式,则由单一中心化的权威方作为传输的认证。代表性项目方为瑞波网络。2、中继\侧链;这是指两条需要交互的链之间,有一条中继链或者是侧链作为中介,负责彼此之间的数据交互和资产转移。本质而言,这个中介的技术是由区块链来完成的,所以也就是用去中心化的方式来完成中介,相对比较安全可靠。代表性的项目就是Cosmos和Polkadot。它们本质是利用区块链技术实现了中继,并提供多个区块链的接口,完成区块链之间的交互。3、哈希锁定;这个技术,就是找一条现有公链(如以太坊或者比特币),利用智能合约层面,完成两条链之间的数据交互。这一技术代表是闪电网络、RIF网络。4、分布式私钥控制; 这种跨链,更多应用于资产转移,也是难以完成通用性底层基础设施。其技术本质是当两条链需要完成资产转移时,在A链上锁定相应的资产,并在B链上解锁对应的资产,从而完成资产在两条链上的转移。这个技术的本质是对锁定和解锁的资产私钥进行分布式管理,从而完成分布式验证的资产转移。这个技术代表性的项目是FUSION和NuCpyher

Cosmos的技术方案分为三个主要模块:
Tendermint共识引擎; Tendermint是一套共识引擎和BFT共识算法。这个Tendermint 是由JaeKwon在2014年创建的,他为区块链底层公链开发者将区块链与共识算法打包成为一个引擎。Cosmos利用这个Tendermint BFT引擎,打造了自身的中继链Cosmos Hub。相比其他底层公链,利用Tendermint引擎打造的区块链网络,具备高性能(1秒数量级的出块时间)、安全(BFT容错、分叉可定责)、不分叉的特性。
CosmosSDK; 作为跨链项目方,Cosmos为开发者提供一套完成的SDK(软件开发架构)。Cosmos寄希望于SDK能为自身打造一套完整的模块生态。
IBC(区块链通信协议); IBC的通信协议是非常重要的,也是面临困难重重。Cosmos需要帮助不同网络结构的区块链(如比特币与以太坊、以太坊与EOS)之间完成跨链操作,就要IBC去做这个传信人员。

https://mp.weixin.qq.com/s/CAtRSy24kMu48nh_MdlPMQ 时戳资本研报:跨链研究报告 专业报告
https://www.8btc.com/article/294037 火币研究院本次主要在狭义范畴内剖析了跨链的设计原则、技术难点及其解决方案

在 Cosmos 网络中,每条链可以选用的共识算法有很多,只要是符合 ABCI 规范的共识算法即可。 ABCI 规范旨在实现跨链通信的标准化。目前只有 Tendermint 算法符合这个规范,还有另一些团队也在努力开发符合该规范的其他共识算法。从更抽象的层面上来看,Tendermint 算法的原理是让每位验证者都能互相通信,共同决定一个区块能否上链,这样就能实现单一区块层面上的确定性。

Ark 网络通过为项目提供创建、自定义和扩展其区块链网络的能力,试图解决区块链采用率不高的问题。它使用 DPoS 共识算法,用户需要抵押通证来进行“投票”,从而选出区块链网络中 51 个生产区块的节点,使得用户更容易得进入区块链网络。与其它 DPoS 系统不同的是,用户只需要抵押一些通证就可以了,不需要为了获得区块奖励而持续在线。
Ark 协议已经发布,它支持比特币、莱特币和以太坊之间的双向转账。

Wanchain 是一个跨链平台,它通过连通不同的链来完成链与链之间的价值交换,从而建立一个“去中心化银行”,致力于搭建一个去中心化金融的基础设施。Wanchain 旨在以较低的成本将不同的链互联起来,为那些没有银行账户的人们提供银行服务。同时,他们也帮助客户在 Wanchain 系统中运行他们自己的账本、智能合约和钱包。
Wanchain 协议目前已经发布,并且提供以太坊、比特币、ERC20 代币(例如 DAI 和 MKR)之间的跨链交易。

Komodo 的愿景是创造一个健康的、多区块链的生态系统,降低该技术的使用门槛以及提升大众对这项技术的理解。除了支持基于 UTXO 的智能合约,该平台还支持原子交换、可伸缩解决方案以及互操作性解决方案。目前,Komodo 生态系统中的已有部分可以使用了,例如区块链、共识算法(Delayed Proof of Work)、原子交换以及 Komodo 通证。
Komodo 的跨链兼容所有基于比特币协议网络、以太坊以及基于以太坊的 ERC20 通证。

POA 网络是一个完全去中心化的联盟链,它大部分是基于以太坊协议进行实现的。POA 网络在节点(被称为验证者)之间使用一种叫做权威证明(Proof-of-Authority)的共识算法以及采用基于社区治理的惩罚体制。
POA 网络提供一个跨链桥接来提升各种协议之间的互操作性。通过桥接,平台用户可以将 POA 原生的 POA 通证转账至以太坊网络。POA20 标准和 ERC20 通证的特性完全一致,并且可以用于所有与 ERC20 标准兼容的平台。